<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="jquery.1.6.2.min.js"></script>
<script>

var TARGET_URL = 'atnd.org/events/';
var API_USERS_URL = 'http://api.atnd.org/events/users/';

/**
 *  指定ページだった場合にアイコンを表示する
 **/
function checkForValidUrl(tabId, changeInfo, tab) {
	if (tab.url.indexOf(TARGET_URL) > -1) {
		chrome.pageAction.show(tabId);
	}
};
chrome.tabs.onUpdated.addListener(checkForValidUrl);


/**
 *  アイコンがクリックされたら動く
 **/
function clicked(tab){
	var eventid = getEventidByUrl(tab.url);
	var event   = getEventByEventid(eventid);
	chrome.tabs.sendRequest(tab.id, event, function handler(response) {
		// alert(response.ret);
	});
}
/* popupが指定されてると呼ばれないので注意 */
chrome.pageAction.onClicked.addListener(clicked);

/**
 *  指定URLからイベントIDを取得する
 *  今コレはATND用
 **/
function getEventidByUrl(url){
	var start = url.indexOf(TARGET_URL);
	start = start + TARGET_URL.length;
	url = url.substring(start);
	var ret = url.split('#',2);
	return ret[0];
}

function getEventByEventid(eventid){
	var ret = null;
	if (eventid < 1){return ret;}
		$.ajax({
			type: 'GET',
			url: API_USERS_URL,
			data: {
				'event_id': eventid,
				'format': 'json'
			},
			dataType: 'json',
			async: false,
			success: function(json) {
				console.log(json);
				if (json.results_returned == '1') {
					ret = json.events[0];
				}
			},
			error: function(xhr, errorText, error) {
				if (xhr.status == 200) {
					console.warn(xhr);
					console.warn(errorText);
					console.warn(error);
				}
			}
		});
	return ret;
}

</script>
</head>
<body>
</body>
</html>
